Where Am I?

Basic Requirements

Criteria Meet Specification

Include in your project submission your write-up (PDF format), supporting images, and the entire ROS package you created.

The student submitted all required files specified in the criteria.

Remember to watermark your image with your first and last name; annotation can be in a variety of ways, but using a watermarking tool such as https://www.watermarquee.com is preferred.

Robot Model

Criteria Meet Specification

Create your own mobile robot model with at least a camera and a laser sensor. This robot model should have significant changes to the robot's base and possibly sensor locations.

  • The robot model should be a mobile robot comprising of a base, at least two actuators, a camera and a laser sensor.
  • The model should have corresponding URDF and Gazebo files in the package directory.
  • The URDF and Gazebo files should include all the commands/code necessary for building that particular robot.

Setup the Gazebo and Rviz environments and launch the robot inside the environment.

  • Launch files for integrating the robot model with Gazebo and RViz and to launch the model in the simulation environments, should be included.
  • The model should successfully load in the simulation environments.

Localization

Criteria Meet Specification

Modify the appropriate launch files to include the provided map, and the amcl and move_base packages.

  • Add nodes for amcl and move_base to the amcl.launch file.
  • Add node to open the provided map in Gazebo and RViz.
  • Each node should contain set of parameters, or include parameters from config files, that are important to localize the robot correctly.

Add and tune the parameters included for the amcl and move_base nodes.

  • Each node should include a set of parameters that have values tuned to localize the robot in RViz as accurately as possible.
  • The writeup should include explanations of choice of parameters and why the corresponding values were selected.

Localization Accuracy

Criteria Meet Specification

Launch the robot in Gazebo and RViz with the provided map, and use provided C++ node to navigate it to the goal position.

  • The entire simulation environment with the robot and the map should be launch ready.
  • Using the provided C++ node the robot should be able to navigate to the goal position.
  • Display the PoseArray in RViz for the entire duration of the robot’s movements, and include the final image of the RViz environment after the robot reaches the goal position in your submission.

Write-up Requirements

Criteria Meet Specification

Include a full write up with the following sections: Abstract, Introduction, Background, Model Configuration, Results, Discussion, and Future Work. Include supporting images where appropriate.

Student includes a full write-up covering the required sections. The write-up is of proper and professional formatting with supporting images where appropriate. The write-up must be submitted in PDF format.

Abstract - Give a high-level overview of work.

Student gives a high-level overview of what is being attempted in the report. Abstracts are typically 5-10 sentences that provide just enough context to understand the gist of the report.

Introduction - Explain the concept of the project and what is trying to be achieved.

Student can clearly and accurately explain the problem domain.

Background - Explain the importance of localization for a robot. Explain, compare and contrast the two types of localization methods covered in the Classroom - Kalman and Particle filters.

Student provides a sufficient background into the scope of the problem / technologically while also identifying some of the current challenges in robot localization and why the problem domain is an important piece of robotics. They further discuss and compare Kalman and Particle filters.

Results - Show the results of both of the robots' performances. Include charts, graphs, and tables as necessary. Compare the results from both robots.

Student should include the image of RViz with the robot at goal position and the PoseArray displayed. This will help gauge how well their parameters are tuned. For this, the student should submit the results for both the Classroom robot and the robot they developed.

Model Configuration - Justify your choice of parameters, explain the size of your robot and choice of sensors locations.

Student describes the parameters, the choice of parameters as well as demonstrates an understanding of the impact of these parameters (for example, how do more/fewer particles impact the results?)

Discussion - What went well, what went wrong. Reflect upon the results of your robot's performance. Justify your answers with facts.

  • The student presents an unbiased view of their results and justifies their stance with facts.
  • The student discusses about whether AMCL would work well for the kidnapped robot problem and what kind of scenarios would need to be accounted for it.
  • The student provides examples with very brief discussions on where they would use MCL/AMCL in an industry domain.

Future Work - What types of enhancements could be made to the model to increase accuracy and/or decrease processing time?

The student can accurately and effectively explain the trade-offs in accuracy and processing time. The student identifies other areas of the robot for improvement including the addition of more sensors, different base size, etc.

[Optional] The student explains how they could deploy this project on actual hardware and what considerations would have to be made in that respect.

Tips to make your project standout:

Stand out submissions should have lots of original work (i.e. creating intricate robot models on their own and detailed reports). Students who write professionally (i.e. similar to published papers) should also be noted for their attention to detail in the report.